﻿/**
 * 公共js文件
 */

/**
 * [filefujianChange 验证上传内容格式，大小等内容]
 * @param  {Object} target DOM对象
 * @return {[type]}        [description]
 */
 function filefujianChange(target) {
	var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
	var fileSize = 0;

	if (isIE && !target.files) {
		var filePath = target.value;
		var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
		var file = fileSystem.GetFile(filePath);
		fileSize = file.Size;
	}
	else {
		fileSize = target.files[0].size;
	}

	var size = fileSize / 1024;
	if(size > 10000) {
		window.pu_alert.show({
			title: "提示",
			content: "图片不能大于10MB",
			confirmText: '确认',
			alert: function() {
			},
			width: 400,
			height: 200
		});

		target.value="";
		return;
	}

	var name = target.value;
	var fileName = name.substring(name.lastIndexOf(".")+1);
	if(fileName != "jpg" && fileName != "jpeg" && fileName != "gif" && fileName != "png"){
		window.pu_alert.show({
			title: "提示",
			content: "请选择图片格式文件上传(jpg, jpeg, gif, png)！",
			confirmText: '确认',
			alert: function() {
			},
			width: 400,
			height: 200
		});

		target.value="";
		return;
	}
 }


/**
 * IE浏览器判断
 * 返回 true 表示正确，false表示错误
 * @param {Number} ver  需要检测的版本号
 * @returns {Boolen}
 */
var isIE = function(ver){
	var b = document.createElement('b')
	b.innerHTML = '<!--[if IE ' + ver + ']><i></i><![endif]-->'
	return b.getElementsByTagName('i').length === 1
};

/**
 * 浏览器升级提示
 * 当用户在 IE5 IE6 IE7下使用时在顶部显示该提示
 * 若该提示被关闭则在其它页均不显示
 * 若未关闭则所有页都显示
 */
var updateBrowserTips = function() {
	if(isIE(5) || isIE(6) || isIE(7)) {
		var _cookie = document.cookie.split(';');	//切割cookie
		var _cookieOpenState = true;	//是否显示浏览器升级提示，true: 显示；false: 隐藏
		var _initState = false; //判断cookie是否有 updateClose 参数

		for(var i=0, len =_cookie.length; i<len; i++) {
			var _tmp = _cookie[i].split('=');
			if(_tmp[0] === "updateClose") {
				_initState = true;
				if(_tmp[1] === '1') {
					_cookieOpenState = true;
				}
				else {
					_cookieOpenState = false;
				}
			}
		}

		// 是否显示升级提示
		if(_cookieOpenState || !_initState) {
			// 浏览器升级提示
			$('body').prepend(
				'<div class="top-fixed-update" id="topFixedUpdate">'+
				'   <p>'+
				'       <i class="icon icon-clock"></i>'+
				'       您的浏览器版本较低，升级后购物体验更流畅哟~'+
				'       <a href="https://support.microsoft.com/zh-cn/help/17621/internet-explorer-downloads" class="btn" target="_blank">立即升级</a>'+
				'       <i class="icon icon-close"></i>'+
				'   </p>'+
				'</div>'
			);

			document.cookie = "updateClose=1; domain=.jdhui.com";
			$('#topFixedUpdate').animate({
				top: '0',
				height: '54px',
				opacity: '1'
			});
		}
	}
};

// 兼容提示关闭
$(document).on('click', '#topFixedUpdate .icon-close', function() {
	document.cookie = "updateClose=0; domain=.jdhui.com";
	$(this).parents('#topFixedUpdate').animate({
		top: '-54px',
		height: '0',
		opacity: '0',
	}, function() {
		$(this).remove();
	});
});

/**
 * ajax请求 POST方法
 * 
 * @param {String} url 请求地址
 * @param {Object} data 数据
 * @param {Function} successFun 成功函数
 * @param {Function} errorFun 失败函数
 * @author GM
 * @version 1.0.0
 */
function ajaxPost(url, data, successFun, errorFun) {
	$.ajax({
		type: "POST",
		url: url,
		data: data,
		dataType: "json",
		timeout: 10000,
	    xhrFields: {
        	withCredentials: true
    	},
		success:function(data){
			if (successFun) successFun.call(this, data);
		},
		error: function(err) {
        	if (errorFun) errorFun.call(this, err);
    	}
	});
}

/**
 * ajax请求 GET方法
 * 
 * @param {String} url 请求地址
 * @param {Object} data 数据
 * @param {Function} successFun 成功函数
 * @param {Function} errorFun 失败函数
 * @author GM
 * @version 1.0.0
 */
function ajaxGet(url, data, successFun, errorFun) {
	$.ajax({
		type: "GET",
		url: url,
		data: data,
		dataType: "json",
		timeout: 10000,
	    xhrFields: {
        	withCredentials: true
    	},
		success:function(data){
			if (successFun) successFun.call(this, data);
		},
		error: function(err) {
        	if (errorFun) errorFun.call(this, err);
    	}
	});
}

/*
	公共地址
 */
 // 下拉框模拟，兼容后生成dom的形式
		// var provinceId = $("#area_province select").val();
		// var cityId = $("#area_city select").val();
		// var districtId = $("#area_district select").val();
		// var townId = $("#area_town select").val();
		// console.log(provinceId);
		// console.log(cityId);
		// console.log(districtId);
		// console.log(townId);
		// 
		// 
		// 
		// function domselect(p_obj, obj, o_obj) {
		// 	$(p_obj).on('mouseleave', '.sselect', function(e) {
		// 		$(this).removeClass('active');
		// 		$(this).find('dt b').attr('class', 'sarrow-down');
		// 	});
		// 	$(p_obj).on('click', obj, function(e) {
		// 		var _p = $(this).parent();
		// 		var _op = $(this).siblings('select').find('option')
		// 		if(_op.hasClass('fistOption')){
		// 			$('.fistOption').remove();
		// 		}
		// 		if (_p.hasClass('active')) {
		// 			_p.removeClass('active');
		// 			$(this).find('b').attr('class', 'sarrow-down');
		// 		} else {
		// 			_p.addClass('active');
		// 			$(this).find('b').attr('class', 'sarrow-up');
		// 		}
		// 	});
		// 	$(p_obj).on('click', o_obj, function(e) {
		// 		var _h = $(this).html();
		// 		var _dd = $(this).parent();
		// 		_dd.siblings('dt').find('span').html(_h).siblings('b').attr('class', 'sarrow-down');
		// 		var _index = $(this).index();
		// 		var _parent = _dd.parent();
		// 		_parent.removeClass('active');
		// 		var _select = _parent.find('select');
		// 		_select.find('option').eq(_index).prop('selected', true);
		// 		_select.val(_select.find('option').eq(_index).val());
		// 		_select.change();
		// 	});
		// }
	 //   // 主表单地址选择
		// domselect(".msi-input-group", ".sselect dt", ".sselect dd a");

		// $.post("/api/common/region/area-data", function(_res) {
		// 	if (_res.error_code == 0) {
		// 		for (var i = 0; i < _res.data.length; i++) {
		// 			$("#area_province").find("dd").append("<a href='javascript:;'  class='th" + _res.data[i]['region_id'] + "'>" + _res.data[i]['provice_name'] + "</a>");
		// 			$("#area_province").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['provice_name'] + "</option>");
		// 		}
		// 	}
		// })
		// 
		//进页面加载编辑数据---城市
		// var _quanCityVal =  $("#area_province").find('select').val();
		// var _QCityURL = "/api/common/region/area-data?type=2&region_id=" + _quanCityVal;
		// $.get(_QCityURL, function(_res) {
		// 	 if (_res.error_code == 0) {
		// 		for (var i = 0; i < _res.data.length; i++) {
		// 			$("#area_city").find("dd").append("<a href='javascript:;'  >" + _res.data[i]['city_name'] + "</a>");
		// 			$("#area_city").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['city_name'] + "</option>");
		// 		}
		// 	}
		// })


		//进页面加载编辑数据---地区
		// var _quanDistrictVal =  $("#area_city").find('select').val();
		// var _QDistrictURL = "/api/common/region/area-data?type=3&region_id=" + _quanDistrictVal;
		// $.get(_QDistrictURL, function(_res) {
		// 	 if (_res.error_code == 0) {
		// 		for (var i = 0; i < _res.data.length; i++) {
		// 			$("#area_district").find("dd").append("<a href='javascript:;'  >" + _res.data[i]['county_name'] + "</a>");
		// 			$("#area_district").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['city_name'] + "</option>");
		// 		}
		// 	}
		// })

		//进页面加载编辑数据---街道
		// var _quanTownVal =  $("#area_district").find('select').val();
		// var _QTownURL = "/api/common/region/area-data?type=4&region_id=" + _quanTownVal;
		// $.get(_QTownURL, function(_res) {
		// 	 if (_res.error_code == 0) {
		// 		for (var i = 0; i < _res.data.length; i++) {
		// 			$("#area_town").find("dd").append("<a href='javascript:;'  >" + _res.data[i]['town_name'] + "</a>");
		// 			$("#area_town").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['city_name'] + "</option>");
		// 		}
		// 	}
		// })

		//进页面加载编辑数据---乡村
		// var _quanVillageVal =  $("#area_town").find('select').val();
		// var _QVillageURL = "/api/common/region/area-data?type=5&region_id=" + _quanVillageVal;
		// $.get(_QVillageURL, function(_res) {
		// 	 if (_res.error_code == 0) {
		// 		for (var i = 0; i < _res.data.length; i++) {
		// 			$("#area_village").find("dd").append("<a href='javascript:;'  >" + _res.data[i]['village_name'] + "</a>");
		// 			$("#area_village").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['city_name'] + "</option>");
		// 		}
		// 	}
		// })


		//选择省份
		// function selectPrince(that){
		//     $("#area_city").find("span").html("选择市");
		//     $("#area_city").find("dd").html("");
		//     $("#area_city").find("select").html("");
		//     $("#area_district").find("span").html("选择区");
		//     $("#area_district").find("dd").html("");
		//     $("#area_district").find("select").html("");
		//     $("#area_town").find("span").html("选择镇");
		//     $("#area_town").find("dd").html("");
		//     $("#area_town").find("select").html("");
		//     $("#area_village").find("span").html("选择村");
		//     $("#area_village").find("dd").html("");
		//     $("#area_village").find("select").html("");
		// }
		$("#area_province dd ").on("click", "a",function() {

				setTimeout(function(){
					var _val = $(this).parent('dd').siblings('select').val();
					var _url = "/api/common/region/area-data?type=2&region_id=" + _val;
					$.get(_url, function(_res) {
						 if (_res.error_code == 0) {
							for (var i = 0; i < _res.data.length; i++) {
								$("#area_city").find("dd").append("<a href='javascript:;'  >" + _res.data[i]['city_name'] + "</a>");
								$("#area_city").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['city_name'] + "</option>");
							}
						}
					}) 
				}.bind(this),300)
				$("#area_city").find("span").html("选择市");
				$("#area_city").find("dd").html("");
				$("#area_city").find("select").html("");
				$("#area_district").find("span").html("选择区");
				$("#area_district").find("dd").html("");
				$("#area_district").find("select").html("");
				$("#area_town").find("span").html("选择镇");
				$("#area_town").find("dd").html("");
				$("#area_town").find("select").html("");
				$("#area_village").find("span").html("选择村");
				$("#area_village").find("dd").html("");
				$("#area_village").find("select").html("");
				// $("#area_town").hide();
				// $("#area_village").hide();

		})
		//选择城市
		// function selectCity(){
		//     console.log(222222);
		// }
		$("#area_city dd").on("click", "a",function() {
			setTimeout(function(){
			   	var _val = $(this).parent('dd').siblings('select').val();
				var _url = "/api/common/region/area-data?type=3&region_id=" + _val;
				$.get(_url, function(_res) {
					if (_res.error_code == 0) {
						$("#area_town").show();
						for (var i = 0; i < _res.data.length; i++) {
							$("#area_district").find("dd").append("<a href='javascript:;'>" + _res.data[i]['county_name'] + "</a>");
							$("#area_district").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['county_name'] + "</option>");
						}
					}else{
						$("#area_town").hide();
						$("#area_village").hide();
					}
				})
			}.bind(this),300);
			$(this).siblings("dd").html("");
			$(this).siblings("select").html("");
			$("#area_district").find("span").html("选择区");
			$("#area_district").find("dd").html("");
			$("#area_district").find("select").html("");
			$("#area_town").find("span").html("选择镇");
			$("#area_town").find("dd").html("");
			$("#area_town").find("select").html("");
			$("#area_village").find("span").html("选择村");
			$("#area_village").find("dd").html("");
			$("#area_village").find("select").html("");
			// $("#area_town").hide();
			// $("#area_village").hide()

		})
		$("#area_district dd").on("click", "a" , function() {
			setTimeout(function(){
				var _val = $(this).parent('dd').siblings('select').val();
				var _url = "/api/common/region/area-data?type=4&region_id=" + _val;
				$.get(_url, function(_res) {

					if (_res.error_code == 0) {
						$("#area_village").show();
						for (var i = 0; i < _res.data.length; i++) {
							//$("#area_village").find("dd").append("<a href='javascript:;'>" + _res.data[i]['village_name'] + "</a>");
							//$("#area_village").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['village_name'] + "</option>");
							$("#area_town").find("dd").append("<a href='javascript:;'>" + _res.data[i]['town_name'] + "</a>");
							$("#area_town").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['town_name'] + "</option>");
						}
					}else{
						$("#area_village").hide();
					}
				})
			}.bind(this),300);
			$(this).siblings("dd").html("");
			$(this).siblings("select").html("");
			$("#area_town").find("span").html("选择镇");
			$("#area_town").find("dd").html("");
			$("#area_town").find("select").html("");
			$("#area_village").find("span").html("选择村");
			$("#area_village").find("dd").html("");
			$("#area_village").find("select").html("");

		})
		$("#area_town dd").on("click", "a" ,function() {
			setTimeout(function(){
				var _val = $(this).parent('dd').siblings('select').val();
				var _url = "/api/common/region/area-data?type=5&region_id=" + _val;
				$.get(_url, function(_res) {
					if (_res.error_code == 0) {
						$("#area_village").show();
						for (var i = 0; i < _res.data.length; i++) {
							$("#area_village").find("dd").append("<a href='javascript:;'>" + _res.data[i]['village_name'] + "</a>");
							$("#area_village").find("select").append("<option value='" + _res.data[i]['region_id'] + "'>" + _res.data[i]['village_name'] + "</option>");
						}
					}else{
						$("#area_village").hide();
					}
				})
			}.bind(this),300);
			$(this).siblings("dd").html("");
			$(this).siblings("select").html("");
			$("#area_village").find("span").html("选择村");
			$("#area_village").find("dd").html("");
			$("#area_village").find("select").html("");
		})
		$("#area_village dd").on("click", "a" , function() {
			setTimeout(function(){
				var _val = $(this).parent('dd').siblings('select').val();
			}.bind(this),300);
			$(this).siblings("dd").html("");
			$(this).siblings("select").html("");

			//var _url = "/api/common/region/area-data?type=5&region_id=" + _val;
		})


$(function(){

	updateBrowserTips(); //浏览器升级提示
});